package com.zhuanzhuan.hero.user.facade.label;

import com.bj58.spat.scf.server.contract.annotation.ServiceContract;
import com.bj58.youpin.common.rpc.result.Result;
import com.bj58.zhuanzhuan.zzentry.common.service.entity.ServiceHeaderEntity;
import com.bj58.zhuanzhuan.zzentry.common.service.entity.ZZOpenScfBaseResult;
import com.bj58.zhuanzhuan.zzentry.common.service.model.openEntry.ZZHeader;
import com.zhuanzhuan.hero.user.dto.label.QueryUserBoundLabelDTO;
import com.zhuanzhuan.hero.user.dto.label.SaveUserBoundLevelLabelDTO;
import com.zhuanzhuan.hero.user.vo.label.UserBoundLevelLabelVO;

/**
 * @ClassName IUserLabelFacade
 * @Description
 * @Author hanjunjun
 * @Date 2024/6/19 14:57
 */
@ServiceContract
public interface IUserLabelFacade {

    /**
     * 前端-标签-查询用户已绑定的经营标签、优势介绍
     *
     * @param header
     * @param queryUserBoundLabelDTO
     * @return com.bj58.zhuanzhuan.zzentry.common.service.entity.ZZOpenScfBaseResult<com.zhaunzhuan.hero.user.vo.label.UserBoundLabelVO>
     * @author  hanjunjun
     * @date 2024/6/19
     **/
    ZZOpenScfBaseResult<UserBoundLevelLabelVO> queryUserBoundLevelLabel(@ZZHeader ServiceHeaderEntity header,
        QueryUserBoundLabelDTO queryUserBoundLabelDTO);

    Result<UserBoundLevelLabelVO> queryUserBoundLevelLabel(Long uid, QueryUserBoundLabelDTO queryUserBoundLabelDTO);

    /**
     * 前端-标签-保存用户已绑定的经营标签、优势介绍
     *
     * @param header
     * @param saveUserBoundLevelLabelDTO
     * @return com.bj58.zhuanzhuan.zzentry.common.service.entity.ZZOpenScfBaseResult<com.zhaunzhuan.hero.user.vo.label.UserBoundLevelLabelVO>
     * @author  hanjunjun
     * @date 2024/6/19
     **/
    ZZOpenScfBaseResult<Boolean> saveUserBoundLevelLabel(@ZZHeader ServiceHeaderEntity header,
        SaveUserBoundLevelLabelDTO saveUserBoundLevelLabelDTO);

}
